<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        //网络请求到一个数据： aaa
        //处理：aaa111
        //处理：aaa111222
        // new Promise((resolve, reject)=>{
        //     setTimeout(()=>{
        //         resolve('aaa')
        //     },2000)
        // }).then(res => {
        //     //1. 请求到数据aaa
        //     console.log(res)

        //     //对数据aaa进行第一次的处理
        //     return new Promise((resolve)=>{//reject是可选的，这里也可以只有一个函数
        //         resolve(res + '111')
        //     })
        // }).then(res =>{
        //     console.log(res)
        //     //对aaa进行第二次处理
        //     return new Promise((resolve)=>{
        //         resolve(res + '222')
        //     })
        // }).then(res =>{
        //     console.log(res)
        // })
            

        //简化写法
        // new Promise((resolve, reject)=>{
        //     setTimeout(()=>{
        //         resolve('aaa')
        //     },2000)
        // }).then(res => {
        //     //1. 请求到数据aaa
        //     console.log(res)

        //     //对数据aaa进行第一次的处理
        //     return Promise.resolve(res + '111')
        // }).then(res =>{
        //     console.log(res)
        //     //对aaa进行第二次处理
        //     return Promise.resolve(res + '222')
          
        // }).then(res =>{
        //     console.log(res)
        // })


        //进一步简化,省略掉Promise.resolve
        new Promise((resolve, reject)=>{
            setTimeout(()=>{
                resolve('aaa')
            },2000)
        }).then(res => {
            //1. 请求到数据aaa
            console.log(res)

            //对数据aaa进行第一次的处理
            return res + '111'
        }).then(res =>{
            console.log(res)
            //对aaa进行第二次处理
            return res + '222'
            //如果需要抛出错误有俩种方式
            // return Promise.reject('出错了！')
            // throw '哎呀！粗错了'

          
        }).then(res =>{
            console.log(res)
        }).catch(err =>{//err参数用于接收 抛出的错误信息
            console.log(err)
        })



    </script>
</body>
</html>